From ed6dd1db77960c59780399e0b305c1b50ca6f02c Mon Sep 17 00:00:00 2001 From: Wei Liu Date: Mon, 2 Mar 2015 15:05:43 +0000 Subject: [PATCH] stubdom: fix make clean and distclean on a freshly cloned tree Clean and distclean targets need not depend on existence of the mini-os tree. Don't check for mini-os and don't try to blindly include mini-os's Config.mk when doing clean and distclean. Note that one subtle issue is that $(XEN_ROOT)/Config.mk tries to include $(XEN_ROOT)/config/$(XEN_OS).mk. In stubdom's case XEN_OS is "MiniOS". Then $(XEN_ROOT)/config/MiniOS.mk tries to include mini-os's Config.mk. Since clean and distclean don't enforce existence of mini-os tree, don't include $(XEN_ROOT)/Config.mk to avoid getting error due to the aforementioned issue. Reported-by: Sander Eikelenboom Signed-off-by: Wei Liu Cc: Ian Campbell Cc: Ian Jackson Cc: Stefano Stabellini Cc: Samuel Thibault Acked-by: Ian Campbell --- stubdom/Makefile | 13 ++++++++----- stubdom/c/Makefile | 2 ++ stubdom/caml/Makefile | 2 ++ 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/stubdom/Makefile b/stubdom/Makefile index 1a1f26330b..f339b200b8 100644 --- a/stubdom/Makefile +++ b/stubdom/Makefile @@ -1,15 +1,18 @@ XEN_ROOT = $(CURDIR)/.. MINI_OS = $(XEN_ROOT)/extras/mini-os -ifeq ($(wildcard $(MINI_OS)/Config.mk),) -$(error Please run `make mini-os-dir' in top-level directory) -endif - export XEN_OS=MiniOS export stubdom=y export debug=y -include $(XEN_ROOT)/Config.mk + +ifeq (,$(findstring clean,$(MAKECMDGOALS))) + ifeq ($(wildcard $(MINI_OS)/Config.mk),) + $(error Please run `make mini-os-dir' in top-level directory) + endif + include $(XEN_ROOT)/Config.mk +endif + -include $(XEN_ROOT)/config/Stubdom.mk GNU_TARGET_ARCH:=$(XEN_TARGET_ARCH) diff --git a/stubdom/c/Makefile b/stubdom/c/Makefile index c646c26e74..b252dcad0b 100644 --- a/stubdom/c/Makefile +++ b/stubdom/c/Makefile @@ -1,6 +1,8 @@ XEN_ROOT = $(CURDIR)/../.. +ifeq (,$(findstring clean,$(MAKECMDGOALS))) include $(XEN_ROOT)/Config.mk +endif all: main.a diff --git a/stubdom/caml/Makefile b/stubdom/caml/Makefile index e79c98df13..f550de1680 100644 --- a/stubdom/caml/Makefile +++ b/stubdom/caml/Makefile @@ -1,6 +1,8 @@ XEN_ROOT = $(CURDIR)/../.. +ifeq (,$(findstring clean,$(MAKECMDGOALS))) include $(XEN_ROOT)/Config.mk +endif CAMLLIB = $(shell $(OCAMLC_CROSS_PREFIX)ocamlc -where) DEF_CPPFLAGS += -I$(CAMLLIB) -- 2.30.2